<?php

class Prestamo extends BasePrestamo
{
	/** 
	 * devuelve si el prestamo esta o no vencido
	 * si la entrega del ejemplar prestado no se ha realizado devuelve true
	 * de lo contrario devuelve false
	 */
	public function esVencido(){
		return (self::getFechadevolucion() == null);
	}
	
	/**
	 * devuelve el numero de dias que lleva de retraso para la devolucion del ejemplar del prestamo
	 * si el ejemplar del prestamo ya fue devuelto devuelve 0
	 * de lo contrario devuelve el numero de dias de retraso (si los hay) hasta el dia actual para dicho prestamo
	 */
	public function getDiasVencidos(){
		if( self::esVencido() ){
			$timeZone = new DateTimeZone('America/Bogota');
			$hoy = new DateTime("NOW", $timeZone);
			$hoy = $hoy->format('Y-m-d');
			$actualTime = strtotime($hoy);
			
			$fechaEntrega = strtotime($this->fechaentrega);
			
			$diffDays = $actualTime - $fechaEntrega;
			$diffDays = floor($diffDays / 86400);
			
			if( $diffDays > 0 )
				return $diffDays;
			else
				return 0;
		}else
			return 0;
	}
	
	/**
	 * devuelve el valor de la multa del prestamo
	 * si el ejemplar del prestamo ya fue devuelto devuelve 0
	 * de lo contrario devuelve la multa que debe hasta el dia actual para dicho prestamo
	 */
	public function getValorMulta(){
		$multaDia = 1000;
		$valorMulta = self::getDiasVencidos() * $multaDia;
		
		return $valorMulta;
	}
}
